import ISprite from "./ISprite";

export default interface ISpriteContainer {
    // 如有需要，提供一个容器名称
    name: string;
    // 添加一个精灵到容器中
    addSprite(sprite: ISprite): ISpriteContainer;
    // 从容器中删除一个精灵
    removeSprite(sprite: ISprite): boolean;
    // 清空整个容器
    removeAll(includeThis: boolean): void;
    // 根据精灵获取索引号，如果没找到精灵，返回-1
    getSpriteIndex(sprite: ISprite): number;
    // 根据索引号，从容器中获取精灵
    getSprite(idx: number): ISprite;
    // 获取容器中精灵的数量
    getSpriteCount(): number;
    getParentSprite(): ISprite | undefined;
    readonly sprite: ISprite | undefined;
}